package app.util;

import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

public class ThreadUtil {
	
	/**
	 * 创建一个可缓存的线程池。如果线程池的大小超过了处理任务所需要的线程，
	 * 那么就会回收部分空闲（60秒不执行任务）的线程，当任务数增加时，此线程池又可以智能的添加新线程来处理任务。
	 * 此线程池不会对线程池大小做限制，线程池大小完全依赖于操作系统（或者说JVM）能够创建的最大线程大小
	 * 
	 * @return ExecutorService
	 */
	public static ExecutorService newCachedThreadPool = Executors.newCachedThreadPool();
	
	private static Map<String,Runnable> runningThreadMap = new HashMap<String, Runnable>();

	public static Runnable getRunningThread(String id) {
		return runningThreadMap.get(id);
	}

	public static void setRunningThread(String id,Runnable target) {
		runningThreadMap.put(id, target);
	}
	

}
